A compact execution history for dynamic slicing
نویسندگان
چکیده
A slice of a program P with respect to a slicing criterion C ≡ ({var}, c_stmt) is a subset of the program which includes all statements that directly or indirectly affect the value of variable var in c_stmt [1,10–12]. A static slice includes all statements which might affect the value of var. It is constructed using program analysis techniques. A dynamic slice consists of only those statements that actually influence the value of var in an execution of the program. It is built using run-time information. A dynamic slice is more precise than a static slice because it contains only those statements which have actually influenced var in an execution. A dynamic slice of a program is constructed by analyzing an execution history of the program to discover data and control dependences.1 A complete execution history records all actions performed during an execution of a program. A lot of this information is
منابع مشابه
Handling Pointers and Unstructured Statements in the Forward Computed Dynamic Slice Algorithm
Different program slicing methods are used for debugging, testing, reverse engineering and maintenance. Slicing algorithms can be classified as a static slicing or dynamic slicing type. In applications such as debugging the computation of dynamic slices is more preferable since it can produce more precise results. In a recent paper [5] a new so-called “forward computed dynamic slice” algorithm ...
متن کاملDynamic Slicing Method for Maintenance of Large C Programs
Different program slicing methods are used for maintenance, reverse engineering, testing and debugging. Slicing algorithms can be classified as static slicing and dynamic slicing methods. In several applications the computation of dynamic slices is more preferable since it can produce more precise results. In this paper we introduce a new forward global method for computing backward dynamic sli...
متن کاملDynamic Slicing of Aspect-Oriented Programs
Program slicing is a decomposition technique which has many applications in various software engineering activities such as program debugging, testing, maintenance etc. Aspect-oriented programming (AOP) is a new programming paradigm that enables modular implementation of cross-cutting concerns such as exception handling, security, synchronization, logging etc. The unique features of AOP such as...
متن کاملSlicing Methods Using Static and Dynamic Analysis Information
In this paper, we propose four slicing methods using both static and dynamic analysis information. (1) StatementMark Slice : removes the unnecessary statements using an execution history of the statements. (2) Partial Program Analysis : reduces the static analysis cost using invocation history of procedures. (3) Dynamic Data Dependence Analysis : extracts precise data dependence relations using...
متن کاملA GSoC 2013 Proposal Enhancing Giri: Dynamic Slicing in LLVM
Program slice contains all statements in a program that directly or indirectly act the value of a variable occurrence [14], the criteria of which is a pair of statement and variables. We can further narrow the notion of slice, which contains statements that influence the value of a variable occurrence for special program inputs. This is referred as dynamic program slicing [1]. It works on a sin...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Inf. Process. Lett.
دوره 85 شماره
صفحات -
تاریخ انتشار 2003